附录 A:备注与说明
1. 关于混合量化
该功能通常配合 --hybrid, --algorithm auto, --compute-entropy 等参数共同使用,以自动或半自动方式定位敏感层,并通过修改 .quantize 文件来指定保留高精度的层。
2. 关于版本差异
不同版本的工具链在少量参数名称或默认值上可能存在差异,建议以当前环境的 pegasus <command> --help 输出为最准确的参考。
3. 配置单核与双核模型编译
通过组合使用 VIV_MGPU_AFFINITY 和 VIV_OVX_MULTI_DEVICE 环境变量,可以控制导出的 .nb 文件在目标硬件上的核心使用方式。
3.1 导出单核模型(推荐)
这是最常用且推荐的模式,将模型编译为在单个NPU核心上运行。
# 编译单core模型的环境变量
export VIV_MGPU_AFFINITY=1:0
export VIV_OVX_MULTI_DEVICE=1:1
# 参数1: 模型目录, 参数2: 量化时使用的数据类型
./pegasus_export_ovx.sh ./your_model_name float16
3.2 导出双核模型
对于较大的模型,可以尝试编译为在双NPU核心上并行运行的模式,以可能获得更高的性能。
# 编译双 core 模型
export VIV_MGPU_AFFINITY=1:0
export VIV_OVX_MULTI_DEVICE=0:2
# 参数1: 模型目录, 参数2: 量化时使用的数据类型
./pegasus_export_ovx.sh ./your_model_name float16